Adding official cell-type labels to Seurat objects based on cluster labels.
Load libraries
library(Seurat)
library(dplyr)
Read in liver map
sobj <- readRDS("~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/dropletQC_filtered/allIntegrated_cca_kanchor5_noBiopsyHeps_dropletQCFiltered.RDS")
res <- "integrated_snn_res.1.4"
Idents(sobj) <- res
View UMAP
DimPlot(sobj, label = TRUE)
Grab cluster IDs and replace with cell-type names - Endothelial cells: 0, 5, 8, 11, 30, 32, 33, 41, 42 - Lymphocytes: 1, 2, 4, 6, 7, 10, 12, 14, 24, 35 - CD3+ Tissue-resident memory T cells: 1, 2, 4, 7, 10, 12, 16 - CD3+ NK/T cells (XCL1;XCL2+): 6, 24, 39 - CD3+ Naive regulatory T cells (LEF1+): 14 - CD3+ Proliferating T cells (TOP2A+): 35 - Myeloid cells: 3, 9, 15, 17, 18, 22, 31, 37, 40, 43 - Macrophages (CD5L+): 3, 22, 43 - CD14+/CD16+ Monocytes (S100A8+): 9, 18 - CD14-/CD16+ Non-classical monocytes: 15, 17 - cDC1 conventional DC type 1 (CST3+): 31 - Hepatocytes: 13, 16, 19, 20, 21, 25, 28, 36 - Antibody-secreting B cells: 23 - Mesenchymal: 26 - B cells: 27, 44 - Cholangiocytes: 34, 38 - Doublets/contamination: 20, 29, 37, 40, 42
Visualise general cell-type markers
# Hepatocytes
FeaturePlot(sobj, features = c("ALB-1"))
FeaturePlot(sobj, features = c("CYP2E1","PCK1"))
# Endothelial
FeaturePlot(sobj, features = c("STAB2","CLEC4G"))
FeaturePlot(sobj, features = c("RSPO3","MECOM"))
# Lymphocytes
FeaturePlot(sobj, features = c("CD3E"))
FeaturePlot(sobj, features = c("XCL1;XCL2","LEF1"))
# B cells
FeaturePlot(sobj, features = c("CD79B", "MS4A1"))
# Plasma cells
FeaturePlot(sobj, features = c("JCHAIN"))
# Myeloid cells
FeaturePlot(sobj, features = c("LYZ-1","S100A8"))
FeaturePlot(sobj, features = c("CD5L","C1QB"))
FeaturePlot(sobj, features = c("CST3","FLT3"))
# Cholangiocytes
FeaturePlot(sobj, features = c("KRT19","SLC4A4"))
# Mast cells
FeaturePlot(sobj, features = c("Prss29"))
clusters <- as.character(Idents(sobj))
clusters <- gsub('\\b0\\b|\\b5\\b|\\b8\\b|\\b11\\b|\\b30\\b|\\b32\\b|\\b33\\b|\\b41\\b|\\b42\\b', "Endothelial",
clusters,
perl = TRUE)
clusters <- gsub('\\b1\\b|\\b2\\b|\\b4\\b|\\b7\\b|\\b10\\b|\\b12\\b|\\b16\\b',
"CD3+ Tissue-resident memory T cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b6\\b|\\b24\\b|\\b39\\b',
"CD3+ NK/T cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b3\\b|\\b22\\b|\\b43\\b', "Macrophages",
clusters,
perl = TRUE)
clusters <- gsub('\\b14\\b', "CD3+ Naive regulatory T cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b35\\b', "CD3+ Proliferating T cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b9\\b|\\b18\\b', "CD14+/CD16+ Monocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b15\\b|\\b17\\b', "CD14-/CD16+ Non-classical monocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b31\\b', "cDC1 conventional DC type 1",
clusters,
perl = TRUE)
clusters <- gsub('\\b13\\b|\\b16\\b|\\b19\\b|\\b20\\b|\\b21\\b|\\b25\\b|\\b28\\b|\\b36\\b', "Hepatocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b23\\b', "Antibody-secreting B cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b26\\b', "Mesenchymal",
clusters,
perl = TRUE)
clusters <- gsub('\\b27\\b|\\b44\\b', "B cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b34\\b|\\b38\\b', "Cholangiocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b20\\b|\\b29\\b|\\b37\\b|\\b40\\b|\\b42\\b', "Doublets/Contamination",
clusters,
perl = TRUE)
levels(as.factor(clusters))
[1] "Antibody-secreting B cells" "B cells"
[3] "CD14-/CD16+ Non-classical monocytes" "CD14+/CD16+ Monocytes"
[5] "CD3+ Naive regulatory T cells" "CD3+ NK/T cells"
[7] "CD3+ Proliferating T cells" "CD3+ Tissue-resident memory T cells"
[9] "cDC1 conventional DC type 1" "Cholangiocytes"
[11] "Doublets/Contamination" "Endothelial"
[13] "Hepatocytes" "Macrophages"
[15] "Mesenchymal"
Add as metadata and visualise on UMAP
sobj@meta.data$general_cell_labels <- clusters
DimPlot(sobj, group.by = "general_cell_labels", label = TRUE)
Save object with labels added
saveRDS(sobj,
file = "~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/dropletQC_filtered/allIntegrated_cca_kanchor5_noBiopsyHeps_dropletQCFiltered.RDS")
Remove objects from environment
rm(list=ls())
gc()
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 3906831 208.7 6285432 335.7 6285432 335.7
Vcells 7997258 61.1 1395876723 10649.7 1043869020 7964.1
Read in PBMC map
load("~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/no_dropletQC/integrated_PBMC_cca_kanchor5_scClustViz.RData")
sobj <- scSeurat
res <- "integrated_snn_res.0.6"
Idents(sobj) <- res
View UMAP
DimPlot(sobj, label = TRUE)
Grab cluster IDs and replace with cell-type names - Monocytes: 0, 6, 8, 9, 21, 24 - CD16+ monocytes: 0, 21, 24 - CD14+ monocytes: 6, 9 - CD14+/CD16+ monocytes: 8 - Monocytes 4 (PLAC8+/dendritic?): 14 - Lymphocytes: 1, 2, 4, 5, 7, 10, 13, 15, 17 - Lymphocytes 1: 2, 5, 13, 17 - Lymphocytes 2 (XCL1;XCL2+): 4, 7 - Lymphocytes 3 (LEF1+): 1, 10 - Lymphocytes 4 (dividing): 23 - Lymphocytes 5 (RHEX+): 15 - B-cells: 3, 11 - HSC: 16 - Plasma B: 18 - Megakaryocytes: 19 - Mast cell: 22 - Erythrocytes: 12 - Unknown: 20
Visualise general cell-type markers:
# Lymphocytes
FeaturePlot(sobj, features = c("CD3E","STMN1"))
FeaturePlot(sobj, features = c("XCL1;XCL2","LEF1"))
FeaturePlot(sobj, features = c("NKG7","CD5"))
FeaturePlot(sobj, features = c("CD247","RHEX"))
# B cells
FeaturePlot(sobj, features = c("BANK1", "MS4A1"))
# Plasma cells
FeaturePlot(sobj, features = c("JCHAIN"))
# Myeloid cells
FeaturePlot(sobj, features = c("S100A8"))
FeaturePlot(sobj, features = c("CD14","FCGR3A;FCGR3B"))
FeaturePlot(sobj, features = c("Fcgr3;Fcgr2b","FLT3"))
FeaturePlot(sobj, features = c("CST3","FLT3"))
# Megakaryocytes
FeaturePlot(sobj, features = c("GP9","TREML1"))
# Mast cells
FeaturePlot(sobj, features = c("Prss29","Prss34"))
# Erythrocytes
FeaturePlot(sobj, features = c("HBA2;HBA1"))
clusters <- as.character(Idents(sobj))
clusters <- gsub('\\b3\\b|\\b11\\b', "B cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b1\\b|\\b10\\b', "Lymphocytes 3",
clusters,
perl = TRUE)
clusters <- gsub('\\b2\\b|\\b5\\b|\\b13\\b|\\b17\\b', "Lymphocytes 1",
clusters,
perl = TRUE)
clusters <- gsub('\\b4\\b|\\b7\\b', "Lymphocytes 2",
clusters,
perl = TRUE)
clusters <- gsub('\\b0\\b|\\b21\\b|\\b24\\b', "Monocytes 1",
clusters,
perl = TRUE)
clusters <- gsub('\\b23\\b', "Lymphocytes 4",
clusters,
perl = TRUE)
clusters <- gsub('\\b15\\b', "Lymphocytes 5",
clusters,
perl = TRUE)
clusters <- gsub('\\b6\\b|\\b9\\b', "Monocytes 2",
clusters,
perl = TRUE)
clusters <- gsub('\\b8\\b', "Monocytes 3",
clusters,
perl = TRUE)
clusters <- gsub('\\b14\\b', "Monocytes 4",
clusters,
perl = TRUE)
clusters <- gsub('\\b18\\b', "Plasma B cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b16\\b', "Hematopoietic stem cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b19\\b', "Megakaryocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b22\\b', "Mast cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b12\\b', "Erythrocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b20\\b', "Unknown",
clusters,
perl = TRUE)
levels(as.factor(clusters))
[1] "B cells" "Erythrocytes" "Hematopoietic stem cells"
[4] "Lymphocytes 1" "Lymphocytes 2" "Lymphocytes 3"
[7] "Lymphocytes 4" "Lymphocytes 5" "Mast cells"
[10] "Megakaryocytes" "Monocytes 1" "Monocytes 2"
[13] "Monocytes 3" "Monocytes 4" "Plasma B cells"
[16] "Unknown"
Add as metadata and visualise on UMAP
sobj@meta.data$general_cell_labels <- clusters
DimPlot(sobj, group.by = "general_cell_labels", label = TRUE)
Save object with labels added
scSeurat <- sobj
save(sCVdata_list, scSeurat,
file = "~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/no_dropletQC/integrated_PBMC_cca_kanchor5_scClustViz.RData")
Read in stimulated data
load("~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/no_dropletQC/3391/integrated_3391_stimulation_pmaio_unstim_downsampled_cca_kanchor5_scClustViz.RData")
# Set identity
Idents(scSeurat) <- "integrated_snn_res.0.4"
View UMAP
DimPlot(scSeurat, label = TRUE)
Grab cluster IDs and replace with cell-type names - Endothelial cells: 0, 3, 10 - Mesenchymal cells: 8, 9 - Hepatocytes: 4, 5, 12 - T cells: 2, 6 - Lymphocytes: 1 - Plasma cells: 11 Clusters 0, 4, 8, 10 have odd gene expression
Visualise general cell-type markers
# Hepatocytes
FeaturePlot(scSeurat, features = c("ALB-1"))
FeaturePlot(scSeurat, features = c("CYP2E1","PCK1"))
# Endothelial
FeaturePlot(scSeurat, features = c("STAB2","CLEC4G"))
FeaturePlot(scSeurat, features = c("RSPO3","MECOM"))
# Lymphocytes
FeaturePlot(scSeurat, features = c("CD3E"))
FeaturePlot(scSeurat, features = c("XCL1;XCL2","LEF1"))
# B cells
FeaturePlot(scSeurat, features = c("CD79B", "MS4A1"))
# Plasma cells
FeaturePlot(scSeurat, features = c("JCHAIN"))
# Myeloid cells
FeaturePlot(scSeurat, features = c("LYZ-1","S100A8"))
FeaturePlot(scSeurat, features = c("CD5L","C1QB"))
FeaturePlot(scSeurat, features = c("CST3","FLT3"))
# Cholangiocytes
FeaturePlot(scSeurat, features = c("KRT19","SLC4A4"))
# Mesenchymal
FeaturePlot(scSeurat, features = c("HHIP"))
clusters <- as.character(Idents(scSeurat))
clusters <- gsub('\\b0\\b|\\b3\\b|\\b10\\b', "Endothelial",
clusters,
perl = TRUE)
clusters <- gsub('\\b1\\b', "Myeloid",
clusters,
perl = TRUE)
clusters <- gsub('\\b2\\b|\\b6\\b', "Lymphocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b11\\b', "Antibody-secreting B cells",
clusters,
perl = TRUE)
clusters <- gsub('\\b4\\b|\\b5\\b|\\b12\\b', "Hepatocytes",
clusters,
perl = TRUE)
clusters <- gsub('\\b8\\b|\\b9\\b', "Mesenchymal",
clusters,
perl = TRUE)
clusters <- gsub('\\b7\\b|\\b13\\b', "Cholangiocytes",
clusters,
perl = TRUE)
levels(as.factor(clusters))
[1] "Antibody-secreting B cells" "Cholangiocytes" "Endothelial"
[4] "Hepatocytes" "Lymphocytes" "Mesenchymal"
[7] "Myeloid"
Add as metadata and visualise on UMAP
scSeurat@meta.data$general_cell_labels <- clusters
DimPlot(scSeurat, group.by = "general_cell_labels", label = TRUE)
Save object with labels added
save(sCVdata_list, scSeurat,
file = "~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/no_dropletQC/3391/integrated_3391_stimulation_pmaio_unstim_downsampled_cca_kanchor5_scClustViz.RData")
Now add new labels but keep cluster numbers
clusters <- as.character(Idents(scSeurat))
clusters <- gsub('\\b0\\b', "Endothelial (0)", clusters, perl = TRUE)
clusters <- gsub('\\b3\\b', "Endothelial (3)", clusters, perl = TRUE)
clusters <- gsub('\\b11\\b', "Antibody-secreting B cells (11)",
clusters,
perl = TRUE)
clusters <- gsub('\\b12\\b', "Hepatocytes (12)", clusters, perl = TRUE)
clusters <- gsub('\\b13\\b', "Cholangiocytes (13)", clusters, perl = TRUE)
clusters <- gsub('\\b10\\b', "Endothelial (10)", clusters, perl = TRUE)
clusters <- gsub('\\b1\\b', "Myeloid (1)", clusters, perl = TRUE)
clusters <- gsub('\\b2\\b', "CD3+ NK/T cells (2)", clusters, perl = TRUE)
clusters <- gsub('\\b6\\b', "CD3+ NK/T cells (6)", clusters, perl = TRUE)
clusters <- gsub('\\b4\\b', "Hepatocytes (4)", clusters, perl = TRUE)
clusters <- gsub('\\b5\\b', "Hepatocytes (5)", clusters, perl = TRUE)
clusters <- gsub('\\b8\\b', "Mesenchymal (8)", clusters, perl = TRUE)
clusters <- gsub('\\b9\\b', "Mesenchymal (9)", clusters, perl = TRUE)
clusters <- gsub('\\b7\\b', "Cholangiocytes (7)", clusters, perl = TRUE)
levels(as.factor(clusters))
[1] "Antibody-secreting B cells (11)" "CD3+ NK/T cells (2)"
[3] "CD3+ NK/T cells (6)" "Cholangiocytes (13)"
[5] "Cholangiocytes (7)" "Endothelial (0)"
[7] "Endothelial (10)" "Endothelial (3)"
[9] "Hepatocytes (12)" "Hepatocytes (4)"
[11] "Hepatocytes (5)" "Mesenchymal (8)"
[13] "Mesenchymal (9)" "Myeloid (1)"
Add as metadata and visualise on UMAP
scSeurat@meta.data$general_cell_labels_clusts <- clusters
DimPlot(scSeurat, group.by = "general_cell_labels_clusts", label = TRUE)
Save object with labels added
save(sCVdata_list, scSeurat,
file = "~/Dropbox/Zoe/scf_version/analysis/healthy_sc/seurat_objects/no_dropletQC/3391/integrated_3391_stimulation_pmaio_unstim_downsampled_cca_kanchor5_scClustViz.RData")